package com.example.chamberlainserver.Vo.Request.TimeReport;

import lombok.Data;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import javax.validation.constraints.Size;
import java.time.LocalDate;

/**
 * 添加时间填报记录请求对象
 */
@Data
public class TimeReportAddVO {
    /**
     * 用户ID
     */
    @NotNull(message = "用户ID不能为空")
    private Integer userId;
    
    /**
     * 填报日期
     */
    @NotNull(message = "填报日期不能为空")
    private LocalDate reportDate;
    
    /**
     * 工作时长（小时）
     */
    @NotNull(message = "工作时长不能为空")
    @Positive(message = "工作时长必须大于0")
    private Double workHours;
    
    /**
     * 工作描述
     */
    @NotNull(message = "工作描述不能为空")
    @Size(min = 1, max = 500, message = "工作描述长度必须在1-500字符之间")
    private String description;
}